Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

1.3K
Vistas
Intentando pasar la variable de JavaScript a PHP usando Ajax pero obtuve el error "Clave de matriz no definida"

He tenido este error durante varios días, he intentado buscar este error, pero cada vez que busco este error, da una razón diferente para el error y cuando intento agregar lo que dicen otros sitios, no funciona, por eso Pregunto aquí porque no veo qué más puedo hacer.

Estoy tratando de pasar una variable de JavaScript a PHP, pero no funciona y no tengo idea de por qué.

Aquí está mi código JavaScript:

 <head> <script type="text/javascript" src="jquery.js"> </script> </head> <script> var variable = "hello"; console.log(variable); $.ajax ({ url: "ajax.php", type: "POST", data:{pass : variable}, success: function() { alert("Success"); } }); </script>

Aquí está mi código PHP:

 $variable = $_POST['pass']; echo($variable);

Todo parece funcionar perfectamente. Escribe la variable en la consola, aparece la alerta que dice éxito. Sin embargo, recibo un mensaje de error que dice: 'Clave de matriz no definida "aprobada"'

¿Qué está causando esto? ¿Gracias?

Editar: la gente me ha dicho que use isset, agregué que eliminó el error, sin embargo, todavía no repite la variable de PHP, lo que significa que todavía no se ha pasado a PHP, todavía estoy tratando de encontrar cómo arreglar esto.

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Su código frontal se ve bien, pero no conozco su entorno PHP de destino, pero tal vez su entorno no acepte formData .

De forma predeterminada, jQuery envía datos POST ajax como formData .

Intenta enviar datos como JSON

 $.ajax({ url: "ajax.php", type: "POST", data: JSON.stringify({pass : variable}), dataType: "json", contentType: "application/json; charset=utf-8", success: function(data){alert(data);}, });

Y luego probablemente tendrás que adaptar tu código php:

 $json = file_get_contents('php://input'); // Converts it into a PHP array $data = json_decode($json, true); $variable = $data['pass']; echo($variable);
over 4 years ago · Santiago Trujillo Denunciar

0

¿Puede usar las herramientas de desarrollo en el navegador Chrome que lo ayudarán a encontrar si los datos se envían correctamente al archivo php? También puede probar $_REQUEST en lugar de publicar solo para verificar qué datos vienen en SOLICITUD, ya que funciona para GET y POST. Si todavía no te ayuda.

También puedes usar

 data: {'pass':variable}

en vez de

 data: {pass:variable}

déjame saber si te funciona.

over 4 years ago · Santiago Trujillo Denunciar

0

Si obtiene este error en su archivo ajax.php en el que publica los datos, digo que es normal porque cuando abre ese archivo (ajax.php) es como si no hubiera $_POST['pass'] porque simplemente abrió ese archivo sin ejecutar JS para enviar datos. Si quieres recibir los datos que envías puedes hacerlo:

Su código JS lo llamo índice de archivo:

 var variable = "hello"; $.ajax ({ url: "ajax.php", type: "POST", data:{pass : variable}, success: function(res) { alert(res); } });

El archivo PHP:

 $variable = $_POST['pass']; echo($variable);

Luego, si abre ese archivo de índice, después de ejecutar el código JS, enviará los datos de la publicación a su archivo PHP y su archivo PHP hará eco de eso, luego el valor se almacenará en esa variable res que cuando todo salió bien, usted Puede ver la alerta de esa res en la página (archivo de índice).

Tenga en cuenta que, como dije, no puede abrir el archivo PHP solo porque no recibe una publicación de datos por sí solo, es normal que regrese undefined.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda